home *** CD-ROM | disk | FTP | other *** search
- #ifndef _LIBRARIES_SHUTDOWN_H
- #define _LIBRARIES_SHUTDOWN_H 1
-
- #ifndef _EXEC_TYPES_H
- #include <exec/types.h>
- #endif /* _EXEC_TYPES_H */
-
- #ifndef _EXEC_NODES_H
- #include <exec/nodes.h>
- #endif /* _EXEC_NODES_H */
-
- struct ShutdownInfo
- {
- struct MinNode sn_Node;
-
- LONG sn_Reserved[10];
- APTR sn_UserData;
- };
-
- #define SNB_RESET 0
- #define SNF_RESET (1 << 0)
-
- enum { SHUTDOWN_NORMAL, SHUTDOWN_FAST };
-
- #ifdef AZTEC_C
-
- #ifndef __VERSION
- #define __VERSION 360
- #endif /* __VERSION */
-
- #if __VERSION < 500
-
- #ifdef __NO_PROTOS
- #undef __NO_PROTOS
- #endif /* __NO_PROTOS */
-
- #ifdef __NO_PRAGMAS
- #undef __NO_PRAGMAS
- #endif /* __NO_PRAGMAS */
-
- #define __NO_PROTOS 1
- #define __NO_PRAGMAS 1
-
- #endif /* __VERSION */
-
- #endif /* AZTEC_C */
-
- #ifdef __ARGS
- #undef __ARGS
- #endif /* __ARGS */
-
- #ifdef __NO_PROTOS
- #define __ARGS(x) ()
- #else
- #define __ARGS(x) x
- #endif /* __NO_PROTOS */
-
- VOID Shutdown __ARGS((ULONG Mode));
- struct ShutdownInfo * AddShutdownInfo __ARGS((LONG (*Check)(),VOID (*Exit)(),STRPTR Name,ULONG Flags));
- LONG RemShutdownInfo __ARGS((struct ShutdownInfo *Info));
-
- #if !defined(__NO_PRAGMAS) && !defined(__NO_PROTOS)
-
- #ifdef LATTICE
- #pragma libcall ShutdownBase AddShutdownInfo 24 a9804
- #pragma libcall ShutdownBase RemShutdownInfo 2a 801
- #pragma libcall ShutdownBase Shutdown 30 1
- #endif /* LATTICE */
-
- #ifdef AZTEC_C
- #pragma amicall(ShutdownBase, 0x24, AddShutdownInfo(a0,a1,a2,d0))
- #pragma amicall(ShutdownBase, 0x2a, RemShutdownInfo(a0))
- #pragma amicall(ShutdownBase, 0x30, Shutdown(d0))
- #endif /* AZTEC_C */
-
- #endif /* __NO_PRAGMAS */
-
- #endif /* _LIBRARIES_SHUTDOWN_H */
-